/************************************************************************/
/* ¥ ∑®∑÷Œˆ÷–µƒ∑˚∫≈                                                     */
/************************************************************************/
#ifndef SYMBOL_H
#define SYMBOL_H
#include <string>

class SymbolBase
{
public:
	enum{
#include "SymbolDefine.h"
        type_upper_bound,
	};
	SymbolBase(const std::string & strSymbolName, int iSymbolType);
	virtual ~SymbolBase(void);
    
    const std::string &         getSymbolName()const;
    
    int                         getSymbolType()const;

	void						setSymbolType(int iSymbolType);


    std::string                 toString() const;
    
    static std::string          symbolTypeToString(int iSymbolType);
    
protected:
    std::string        m_strSymbolName;
    
    int                 m_iSymbolType;

};

#endif

